IF exists(SELECT * FROM dbo.sysobjects WHERE name='PV_notulenOverzichtje' AND xtype='P') 
BEGIN
	DROP PROCEDURE PV_notulenOverzichtje
END
GO

CREATE                  procedure PV_notulenOverzichtje
(@deKlas varchar(5))

as 

set nocount on

create table #hulptaak(inschrijvingsNr char(7),
vak varchar(500)
)

create table #hulpwaarschuwing(inschrijvingsNr char(7),
vak varchar(500)
)

create table #hulpBijkomend(inschrijvingsNr char(7),
vak varchar(500)
)

declare @tekst varchar(500)
declare @iNr char(7)
declare @vak char(30)
declare @oudInr char(7)
declare @klas varchar(5)
declare @toon varchar(500)


declare TaCursor cursor local for 
  select d.vak ,d.inschrijvingsNr,l.klas
  from dbo.Del_taak as d
  left join leerlingen..leerlingen as l on
  d.inschrijvingsNr=l.inschrijvingsNr
  left join leraars..vakvolgorde as v
  on v.vakcode=d.vak
  where l.klas like @deKlas 
	and not (d.inschrijvingsNr is null or d.vak is null)
  order by d.inschrijvingsNr,d.vak
for read only

declare WaCursor cursor local for 
  select d.vak,d.inschrijvingsNr,l.klas
  from dbo.Del_waarschuwing as d
  left join leerlingen..leerlingen as l on
  d.inschrijvingsNr=l.inschrijvingsNr
  left join leraars..vakvolgorde as v
  on v.vakcode=d.vak
  where l.klas like @deKlas
        and not (d.inschrijvingsNr is null or d.vak is null)
  order by d.inschrijvingsNr,d.vak
for read only

declare BpCursor cursor local for 
  select d.vak,d.inschrijvingsNr,l.klas
  from dbo.Del_bijkomend as d
  left join leerlingen..leerlingen as l on
  d.inschrijvingsNr=l.inschrijvingsNr
  left join leraars..vakvolgorde as v
  on v.vakcode=d.vak
  where l.klas like @deKlas
        and not (d.inschrijvingsNr is null or d.vak is null)
  order by d.inschrijvingsNr,d.vak
for read only

set @tekst = ''

open TaCursor
fetch next from TaCursor into @vak,@iNr,@klas
if (@@fetch_status=0)
begin
  set @oudInr=@iNr
  while (@@fetch_status=0)
  begin
	if (@oudInr <> @iNr)
	  begin
   	    if len(@tekst) > 0 set @toon=substring(@tekst,1,len(@tekst)-1)
	    insert into #hulpTaak(inschrijvingsNr,vak)   
            select @oudInr,@toon
	    set @toon = ''
	    set @tekst = rtrim(@vak) + ',' 
	    set @oudInr = @iNr	
	  end
   	else
	  begin
   	    set @tekst=@tekst + rtrim(@vak) + ',' 
 	  end
      fetch next from TaCursor into @vak,@iNr,@klas
  end
  if len(@tekst) > 0 set @toon=substring(@tekst,1,len(@tekst)-1)
  insert into #hulpTaak(inschrijvingsNr,vak)
  select @oudInr,@toon
end
close TaCursor
deallocate TaCursor

set @tekst = ''
open WaCursor
fetch next from WaCursor into @vak,@iNr,@klas
if (@@fetch_status=0)
begin
  set @oudInr=@iNr
  while (@@fetch_status=0)
  begin
	if (@oudInr <> @iNr)
	  begin
	    if len(@tekst) > 0 set @toon=substring(@tekst,1,len(@tekst)-1)
	    insert into #hulpWaarschuwing(inschrijvingsNr,vak)
            select @oudInr,@toon
	    set @toon = ''
	    set @tekst = rtrim(@vak)+',' 
	    set @oudInr = @iNr	
	  end
   	else
	 begin
          set @tekst=@tekst + rtrim(@vak) + ',' 
	 end
       fetch next from WaCursor into @vak,@iNr,@klas
  end
   if len(@tekst) > 0 set @toon=substring(@tekst,1,len(@tekst)-1)
   insert into #hulpWaarschuwing(inschrijvingsNr,vak)
   select @oudInr,@toon
end
close WaCursor
deallocate WaCursor

set @tekst = ''
open BpCursor
fetch next from BpCursor into @vak,@iNr,@klas
if (@@fetch_status=0)
begin
  set @oudInr=@iNr
  while (@@fetch_status=0)
  begin
	if (@oudInr <> @iNr)
	  begin
	    if len(@tekst) > 0 set @toon=left(@tekst,len(@tekst)-1)
	    insert into #hulpBijkomend(inschrijvingsNr,vak)
	    select @oudInr,@toon
	    set @tekst = rtrim(@vak)+',' 
	    set @oudInr = @iNr	
	  end
   	else
	 begin
	  set @tekst=@tekst + rtrim(@vak) + ',' 
	 end
       fetch next from BpCursor into @vak,@iNr,@klas
  end
  if len(@tekst) > 0 set @toon=left(@tekst,len(@tekst)-1)
  insert into #hulpBijkomend(inschrijvingsNr,vak)
  select @oudInr,@toon
end
close BpCursor
deallocate BpCursor

select l.inschrijvingsNr,l.voornaam,l.achternaam,l.klasNr,
       l.naam1,l.klas,l.voornaam+'  '+l.achternaam as volleNaam,
       right(left(a.attestcode,2),1) as attestLetter,
       attestNotatie=case when right(left(a.attestcode,2),1)= 'A' or 
       right(left(a.attestcode,2),1)= 'C' then right(left(a.attestcode,2),1)
       else 'B'+ ' - '+ isnull(convert(varchar(2000),a.stamboekformulering),convert(varchar(2000),a.onderverdeling)) end,
       isnull(a.onderverdeling,a.onderwijsvorm) as clausulering,
       v.school,v.studierichting,v.notulerichting,v.notulejaar,
       v.schoolnummer,v.graad,v.directeur,v.onderwijsvorm,v.volgorde,
       taak=case when (not t.vak is null) and len(t.vak) > 0 
		 then t.vak 
		 else '' end,
       waarschuwing=case when (not w.vak is null) and len(w.vak) > 0 
		 then w.vak 
		  else '' end,
       bijkomend=case when (not b.vak is null) and len(b.vak)> 0 
		then b.vak 
		else '' end,
       de.notuleTekst,
       ad.geboorteplaats,ad.geboortedatum,
       d.zittijd

      
from leerlingen..leerlingen as l
left join  Del_beslis as d
on d.inschrijvingsNr=l.inschrijvingsNr
left join studiegegevens..attest as a
on d.attestcode=a.attestcode
left join #hulpTaak as t
on l.inschrijvingsNr=t.inschrijvingsNr
left join #hulpWaarschuwing as w
on l.inschrijvingsNr=w.inschrijvingsNr
left join #hulpBijkomend as b
on l.inschrijvingsNr=b.inschrijvingsNr 
left join del_notulen as de
on l.inschrijvingsNr=de.inschrijvingsNr
left join leerlingen..vertaaltabelklas as v
on l.klas=v.klas
left join leerlingen..administratieveGegevens as ad
on l.inschrijvingsNr=ad.inschrijvingsNr

where l.klas like @deKlas 

       
   